U.S. Pat. No. 6,215,119 (hereafter “Markham patent”) issued to Roger G. Markham, et al., and assigned to Xerox Corporation, the assignee of the present Patent Application, provides an extensive background of the environment in which the present invention operates. In the Markham patent, the problems associated with low-cost codewheel encoders, which have runout errors that have traditionally been thought to be too high for use with printing architecture utilizing codewheels, are addressed in a multiple printhead system. As was discussed in the Markham patent, hereby incorporated by reference, the firing of the printheads is precisely controlled. The errors in such printing systems can be caused by eccentricities in the construction of the rotating components (such as the imaging drum), or eccentricities in the mounting of the rotating element or the mounting of the codewheel.
The general solution and improvement proffered by the Markham patent is to use two low-cost encoders mounted 180 degrees apart to correct encoder runout error placing the rising edge of the corrected output halfway between the rising edges of the input signals. While this approach improves over single encoder approaches, some limitations still remain. The Markham patent approach suffers the possibility of glitches and discontinuities that occur in the correction signal when the rising edges of the output signals from both of the encoders cross each other. Such discontinuities are known to lead to defects in the print system images.
Averaging techniques to correct runout error may also be implemented using microcontrollers. The present invention presents an advantage over this approach because microcontrollers are often too slow for the amount and speed of processing required in high-speed printers. Many microcontrollers do not have sufficient timer resolution and are largely consumed performing this one task. Since most systems already contain an FPGA or ASIC, the present invention represents a significant cost savings, as it can be implemented in the FPGA or ASIC and will consume a very small amount of its resources.
Thus, there is a need to include low-cost encoders in high-speed printing architecture, correct for their higher runout errors, and do so in a manner that does not require a dedicated microprocessor, does not cause the processing delays or high bandwidth needs of microcontrollers in the associated environment, and eliminates possible glitches that occur when the rising edges of both encoders cross each other.